<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">




<title>Castle ActiveRecord学习实践（7）：使用HQL查询 - TerryLee's Tech Space - 博客园</title>
<meta name="keywords" content="11,数据持久,12,开源世界,Castle,ActiveRecord学习实践,使用HQL查询">
<meta name="description" content="虽然ActiveRecord为我们提供了Find()和FindAll()这样两个静态的查询方法，并且有Where特性可供使用，但是仍然不能解决实际开发中一些复杂的查询，这时我们就需要通过HQL查询来实现。主要内容1．HQL概述2．SimpleQuery查询3．ScalarQuery查询4．自定义查询5．使用CallBack">




<link title="RSS" type="application/rss+xml" rel="alternate" href="http://www.cnblogs.com/Terrylee/rss">
<link title="RSD" type="application/rsd+xml" rel="EditURI" href="http://www.cnblogs.com/Terrylee/rsd.xml"> 
  



<link rel="stylesheet" type="text/css" href="index.css" media="all">
</head>
<body>
    <form name="Form1" method="post" action="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html" id="Form1">
<div>
<input name="__EVENTTARGET" id="__EVENTTARGET" value="" type="hidden">
<input name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" type="hidden">
<input name="__VIEWSTATE" id="__VIEWSTATE" value="" type="hidden">
</div>




        <link rel="shortcut icon" href="blogengine.ico">
<!--done-->
<div id="home">
<div id="header">
	<div id="blogTitle">
	<a id="lnkBlogLogo" href="http://www.cnblogs.com/Terrylee/"><img id="blogLogo" src="logo.gif" alt="返回主页"></a>			
		
<!--done-->
<h1><a id="Header1_HeaderTitle" class="headermaintitle" href="http://www.cnblogs.com/Terrylee/">TerryLee's Tech Space</a></h1>
<h2>TerryLee技术专栏</h2>



		
	</div><!--end: blogTitle 博客的标题和副标题 -->
	<div id="navigator">
		
<!--done-->
			<ul id="navList">
				<li><a id="MyLinks1_HomeLink" class="menu" href="http://www.cnblogs.com/">博客园</a></li>
				<li><a id="MyLinks1_SpaceLink" class="menu" href="http://space.cnblogs.com/">社区</a></li>
				<li><a id="MyLinks1_MyHomeLink" class="menu" href="http://www.cnblogs.com/Terrylee/">首页</a></li>
				<li><a id="MyLinks1_NewPostLink" class="menu" href="http://www.cnblogs.com/Terrylee/admin/EditPosts.aspx?opt=1">新随笔</a></li>
				<li><a id="MyLinks1_ContactLink" accesskey="9" class="menu" href="http://space.cnblogs.com/msg/send/TerryLee">联系</a></li>
				<li><a id="MyLinks1_Admin" class="menu" href="http://www.cnblogs.com/Terrylee/admin/EditPosts.aspx">管理</a></li>
				<li><a id="MyLinks1_Syndication" class="menu" href="http://www.cnblogs.com/Terrylee/rss">订阅</a>
				<a id="MyLinks1_XMLLink" class="aHeaderXML" href="http://www.cnblogs.com/Terrylee/rss"><img src="rss.gif" alt="订阅" style="border-width: 0px;"></a></li>
			</ul>


		<div class="blogStats">
			
			
<!--done-->
随笔- 491&nbsp;
文章- 3&nbsp;
评论- 15367&nbsp;

			
		</div><!--end: blogStats -->
	</div><!--end: navigator 博客导航栏 -->
</div><!--end: header 头部 -->

<div id="main">
	<div id="mainContent">
	<div class="forFlow">
		
					
<!--done-->
<div id="topics">
	<div class="post">
		<h1 class="postTitle">
			<a id="ctl04_TitleUrl" class="postTitle2" href="http://www.cnblogs.com/Terrylee/archive/2006/04/12/372823.html">Castle ActiveRecord学习实践（7）：使用HQL查询</a>
		</h1>
		<div class="clear"></div>
		<div class="postBody">
			<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">摘要：虽然</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">ActiveRecord</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">为我们提供了</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">Find()</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">和</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">FindAll()</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">这样两个静态的查询方法，并且有</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">Where</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">特性可供使用，但是仍然不能解决实际开发中一些复杂的查询，这时我们就需要通过</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">HQL</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">查询来实现。</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">主要内容</span></b><b style=""><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">1</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">HQL</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">概述</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">2</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">SimpleQuery</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">查询</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">3</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">ScalarQuery</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">查询</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">4</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．自定义查询</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">5</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．使用</span><span style="font-size: 10pt; line-height: 150%;" lang="EN-US">CallBack<o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">一．</span></b><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%;" lang="EN-US">HQL</span></b><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">简单介绍</span></b><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%;" lang="EN-US"><o:p></o:p></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">HQL</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">全名是<span lang="EN-US">Hibernate Query Language</span>，它是一种完全面向对象的查询语言。先来看一下<span lang="EN-US">HQL</span>最基本的一些用法<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">1</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．<span lang="EN-US">From</span>子句</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Post</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">你也可以为<span lang="EN-US">Post</span>起一个别名</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Post&nbsp;</span><span style="color: rgb(0, 0, 255);">as</span><span style="color: rgb(0, 0, 0);">&nbsp;post</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">或者省略<span lang="EN-US">as</span></span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Post&nbsp;post</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">2</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．<span lang="EN-US">Select </span>子句</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);">&nbsp;Name,Author&nbsp;</span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">也可以使用<span lang="EN-US">elements</span>函数来查询一个集合</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);">&nbsp;elements(blog.Posts)&nbsp;</span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;blog</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">3</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．使用聚合函数<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">HQL</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">中也可以使用一些聚合函数</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(128, 128, 128);">*</span><span style="color: rgb(0, 0, 0);">)&nbsp;</span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;blog</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">select</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(elements(blog.Posts))&nbsp;</span><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;blog</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">HQL</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">支持的聚合函数有</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(255, 0, 255);">avg</span><span style="color: rgb(0, 0, 0);">(<img src="dot.gif">),&nbsp;</span><span style="color: rgb(255, 0, 255);">sum</span><span style="color: rgb(0, 0, 0);">(<img src="dot.gif">),&nbsp;</span><span style="color: rgb(255, 0, 255);">min</span><span style="color: rgb(0, 0, 0);">(<img src="dot.gif">),&nbsp;</span><span style="color: rgb(255, 0, 255);">max</span><span style="color: rgb(0, 0, 0);">(<img src="dot.gif">)&nbsp;<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(128, 128, 128);">*</span><span style="color: rgb(0, 0, 0);">)&nbsp;<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(<img src="dot.gif">),&nbsp;</span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(0, 0, 255);">distinct</span><span style="color: rgb(0, 0, 0);">&nbsp;<img src="dot.gif">),&nbsp;</span><span style="color: rgb(255, 0, 255);">count</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(128, 128, 128);">all</span><span style="color: rgb(0, 0, 0);"><img src="dot.gif">)</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;">4<span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">．<span lang="EN-US">Where</span>子句</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;blog&nbsp;</span><span style="color: rgb(0, 0, 255);">where</span><span style="color: rgb(0, 0, 0);">&nbsp;blog.Name&nbsp;</span><span style="color: rgb(128, 128, 128);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;‘Terry&nbsp;Lee’</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">from</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;blog&nbsp;</span><span style="color: rgb(0, 0, 255);">where</span><span style="color: rgb(0, 0, 0);">&nbsp;blog.Name&nbsp;</span><span style="color: rgb(0, 0, 255);">is</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">not</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">详细可以参考<span style="color: rgb(51, 102, 255);" lang="EN-US"><a href="http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html"><span style="color: rgb(51, 102, 255); text-decoration: none;">http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html</span></a></span>。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">二．<span lang="EN-US">SimpleQuery</span>查询<span lang="EN-US"><o:p></o:p></span></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">SimpleQuery</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">是一种最简单的查询，它直接处理<span lang="EN-US">HQL</span>语句，并返回一个集合，没有复杂的参数处理。具体用法可以参考下例：<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;"></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[ActiveRecord(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Posts</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;Post&nbsp;:&nbsp;ActiveRecordBase<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_63_1043_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_1043_Open_Text.style.display='none'; Codehighlighter1_63_1043_Closed_Image.style.display='inline'; Codehighlighter1_63_1043_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_63_1043_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_63_1043_Closed_Text.style.display='none'; Codehighlighter1_63_1043_Open_Image.style.display='inline'; Codehighlighter1_63_1043_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_63_1043_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_63_1043_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;<img src="dot.gif"><img src="dot.gif"></span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img id="Codehighlighter1_85_220_Open_Image" onclick="this.style.display='none'; Codehighlighter1_85_220_Open_Text.style.display='none'; Codehighlighter1_85_220_Closed_Image.style.display='inline'; Codehighlighter1_85_220_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_85_220_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_85_220_Closed_Text.style.display='none'; Codehighlighter1_85_220_Open_Image.style.display='inline'; Codehighlighter1_85_220_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_85_220_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);">/**/</span><span id="Codehighlighter1_85_220_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;查询某一类别的所有Posts<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="_strCategory"&gt;</span><span style="color: rgb(0, 128, 0);">类别名称</span><span style="color: rgb(128, 128, 128);">&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;returns&gt;&lt;/returns&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br><img src="inblock.gif" align="top"><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;Post[]&nbsp;GetPostsByCategory(</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_strCategory)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_292_518_Open_Image" onclick="this.style.display='none'; Codehighlighter1_292_518_Open_Text.style.display='none'; Codehighlighter1_292_518_Closed_Image.style.display='inline'; Codehighlighter1_292_518_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_292_518_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_292_518_Closed_Text.style.display='none'; Codehighlighter1_292_518_Open_Image.style.display='inline'; Codehighlighter1_292_518_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_292_518_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_292_518_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SimpleQuery&nbsp;query&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;SimpleQuery(<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Post),<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">@"</span><span style="color: rgb(0, 0, 0);">from&nbsp;Post&nbsp;post&nbsp;where&nbsp;post.Category&nbsp;=&nbsp;?</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">,<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_strCategory<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;(Post[])ExecuteQuery(query);<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_531_703_Open_Image" onclick="this.style.display='none'; Codehighlighter1_531_703_Open_Text.style.display='none'; Codehighlighter1_531_703_Closed_Image.style.display='inline'; Codehighlighter1_531_703_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_531_703_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_531_703_Closed_Text.style.display='none'; Codehighlighter1_531_703_Open_Image.style.display='inline'; Codehighlighter1_531_703_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_531_703_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);">/**/</span><span id="Codehighlighter1_531_703_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;查询某一时间段内发表的所有Posts<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="start"&gt;</span><span style="color: rgb(0, 128, 0);">开始时间</span><span style="color: rgb(128, 128, 128);">&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="end"&gt;</span><span style="color: rgb(0, 128, 0);">结束时间</span><span style="color: rgb(128, 128, 128);">&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;returns&gt;&lt;/returns&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br><img src="inblock.gif" align="top"><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">[]&nbsp;GetPostsInterval(DateTime&nbsp;start,DateTime&nbsp;end)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_780_1040_Open_Image" onclick="this.style.display='none'; Codehighlighter1_780_1040_Open_Text.style.display='none'; Codehighlighter1_780_1040_Closed_Image.style.display='inline'; Codehighlighter1_780_1040_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_780_1040_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_780_1040_Closed_Text.style.display='none'; Codehighlighter1_780_1040_Open_Image.style.display='inline'; Codehighlighter1_780_1040_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_780_1040_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_780_1040_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SimpleQuery&nbsp;query&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;SimpleQuery(<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Post),</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">),<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">@"</span><span style="color: rgb(0, 0, 0);">select&nbsp;post.Id&nbsp;from&nbsp;Post&nbsp;post&nbsp;where&nbsp;post.Created&nbsp;between&nbsp;?&nbsp;and&nbsp;?</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">,<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;start,end<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;(</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">[])ExecuteQuery(query);<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><br>看一下简单的测试代码：<span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[Test]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;TestGetPostsByCategory()<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_46_265_Open_Image" onclick="this.style.display='none'; Codehighlighter1_46_265_Open_Text.style.display='none'; Codehighlighter1_46_265_Closed_Image.style.display='inline'; Codehighlighter1_46_265_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_46_265_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_46_265_Closed_Text.style.display='none'; Codehighlighter1_46_265_Open_Image.style.display='inline'; Codehighlighter1_46_265_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_46_265_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_46_265_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;StrCategory&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Castle</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;IList&nbsp;list&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;(IList)Post.GetPostsByCategory(StrCategory);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;expectedCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.IsNotNull(list);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.AreEqual(expectedCount,list.Count);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="none.gif" align="top"><br><img src="none.gif" align="top">&nbsp;<br><img src="none.gif" align="top"><br><img src="none.gif" align="top">[Test]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;TestGetPostsInterval()<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_315_581_Open_Image" onclick="this.style.display='none'; Codehighlighter1_315_581_Open_Text.style.display='none'; Codehighlighter1_315_581_Closed_Image.style.display='inline'; Codehighlighter1_315_581_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_315_581_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_315_581_Closed_Text.style.display='none'; Codehighlighter1_315_581_Open_Image.style.display='inline'; Codehighlighter1_315_581_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_315_581_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_315_581_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;DateTime&nbsp;start&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Convert.ToDateTime(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">2006-01-01</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;DateTime&nbsp;end&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;DateTime.Now;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;IList&nbsp;list&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;(IList)Post.GetPostsInterval(start,end);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;expectedCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.IsNotNull(list);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.AreEqual(expectedCount,list.Count);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">三．<span lang="EN-US">ScalarQuery</span>查询<span lang="EN-US"><o:p></o:p></span></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">ScalarQuery</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">查询也是一种简单的直接处理<span lang="EN-US">HQL</span>的查询，它也没有复杂的参数处理，只不过返回的值不是集合而是单一的值，具体用法参考下例：<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;"></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[ActiveRecord(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Blogs</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;:&nbsp;ActiveRecordBase<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_63_545_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_545_Open_Text.style.display='none'; Codehighlighter1_63_545_Closed_Image.style.display='inline'; Codehighlighter1_63_545_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_63_545_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_63_545_Closed_Text.style.display='none'; Codehighlighter1_63_545_Open_Image.style.display='inline'; Codehighlighter1_63_545_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_63_545_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_63_545_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;<img src="dot.gif"><img src="dot.gif"></span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img id="Codehighlighter1_85_221_Open_Image" onclick="this.style.display='none'; Codehighlighter1_85_221_Open_Text.style.display='none'; Codehighlighter1_85_221_Closed_Image.style.display='inline'; Codehighlighter1_85_221_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_85_221_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_85_221_Closed_Text.style.display='none'; Codehighlighter1_85_221_Open_Image.style.display='inline'; Codehighlighter1_85_221_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_85_221_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);">/**/</span><span id="Codehighlighter1_85_221_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;查询某作者发表的所有Posts数量<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="_StrAuthor"&gt;</span><span style="color: rgb(0, 128, 0);">作者姓名</span><span style="color: rgb(128, 128, 128);">&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;returns&gt;&lt;/returns&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br><img src="inblock.gif" align="top"><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;GetPostNumByAuthor(</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_StrAuthor)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_288_542_Open_Image" onclick="this.style.display='none'; Codehighlighter1_288_542_Open_Text.style.display='none'; Codehighlighter1_288_542_Closed_Image.style.display='inline'; Codehighlighter1_288_542_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_288_542_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_288_542_Closed_Text.style.display='none'; Codehighlighter1_288_542_Open_Image.style.display='inline'; Codehighlighter1_288_542_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_288_542_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_288_542_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ScalarQuery&nbsp;query&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;ScalarQuery(<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Blog),<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">@"</span><span style="color: rgb(0, 0, 0);">select&nbsp;count(elements(blog.Posts))&nbsp;from&nbsp;Blog&nbsp;blog&nbsp;where&nbsp;blog.Author&nbsp;=&nbsp;?</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">,<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_StrAuthor<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;(</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">)ExecuteQuery(query);<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><br>看一下简单的测试代码<br></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[Test]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;TestGetPostNumByAuthor()<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_46_223_Open_Image" onclick="this.style.display='none'; Codehighlighter1_46_223_Open_Text.style.display='none'; Codehighlighter1_46_223_Closed_Image.style.display='inline'; Codehighlighter1_46_223_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_46_223_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_46_223_Closed_Text.style.display='none'; Codehighlighter1_46_223_Open_Image.style.display='inline'; Codehighlighter1_46_223_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_46_223_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_46_223_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_StrAuthor&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Terry&nbsp;Lee</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;result&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog.GetPostNumByAuthor(_StrAuthor);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;expectedCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.AreEqual(expectedCount,result);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><br><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">四．自定义查询<span lang="EN-US"><o:p></o:p></span></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">在实际开发中，我们所面对的查询远不止上面所说得这么简单，有时候我们需要处理一些自定义的参数，或者执行自定义的查询语句，这时需要我们编写自定义的<span lang="EN-US">ActiveRecord</span>查询，首先要添加一个类，让它继承于基类</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US">ActiveRecordBaseQuery</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">，并覆写<span lang="EN-US">Execute()</span>方法（或者实现<span lang="EN-US">IactiveRecordQuery</span>接口），如下例所示</span><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;"></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;QueryWithNamedParameters&nbsp;:&nbsp;ActiveRecordBaseQuery<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_63_935_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_935_Open_Text.style.display='none'; Codehighlighter1_63_935_Closed_Image.style.display='inline'; Codehighlighter1_63_935_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_63_935_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_63_935_Closed_Text.style.display='none'; Codehighlighter1_63_935_Open_Image.style.display='inline'; Codehighlighter1_63_935_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_63_935_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_63_935_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_authorName&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;_maxResults&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;QueryWithNamedParameters()<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:&nbsp;</span><span style="color: rgb(0, 0, 255);">base</span><span style="color: rgb(0, 0, 0);">(</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Blog))&nbsp;<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_220_230_Open_Image" onclick="this.style.display='none'; Codehighlighter1_220_230_Open_Text.style.display='none'; Codehighlighter1_220_230_Closed_Image.style.display='inline'; Codehighlighter1_220_230_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_220_230_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_220_230_Closed_Text.style.display='none'; Codehighlighter1_220_230_Open_Image.style.display='inline'; Codehighlighter1_220_230_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_220_230_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_220_230_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;AuthorName<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_273_355_Open_Image" onclick="this.style.display='none'; Codehighlighter1_273_355_Open_Text.style.display='none'; Codehighlighter1_273_355_Closed_Image.style.display='inline'; Codehighlighter1_273_355_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_273_355_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_273_355_Closed_Text.style.display='none'; Codehighlighter1_273_355_Open_Image.style.display='inline'; Codehighlighter1_273_355_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_273_355_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_273_355_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_288_310_Open_Image" onclick="this.style.display='none'; Codehighlighter1_288_310_Open_Text.style.display='none'; Codehighlighter1_288_310_Closed_Image.style.display='inline'; Codehighlighter1_288_310_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_288_310_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_288_310_Closed_Text.style.display='none'; Codehighlighter1_288_310_Open_Image.style.display='inline'; Codehighlighter1_288_310_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">get</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span id="Codehighlighter1_288_310_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_288_310_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;_authorName;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_325_348_Open_Image" onclick="this.style.display='none'; Codehighlighter1_325_348_Open_Text.style.display='none'; Codehighlighter1_325_348_Closed_Image.style.display='inline'; Codehighlighter1_325_348_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_325_348_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_325_348_Closed_Text.style.display='none'; Codehighlighter1_325_348_Open_Image.style.display='inline'; Codehighlighter1_325_348_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">set</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span id="Codehighlighter1_325_348_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_325_348_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;_authorName&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;value;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;MaxResults<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_395_477_Open_Image" onclick="this.style.display='none'; Codehighlighter1_395_477_Open_Text.style.display='none'; Codehighlighter1_395_477_Closed_Image.style.display='inline'; Codehighlighter1_395_477_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_395_477_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_395_477_Closed_Text.style.display='none'; Codehighlighter1_395_477_Open_Image.style.display='inline'; Codehighlighter1_395_477_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_395_477_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_395_477_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_410_432_Open_Image" onclick="this.style.display='none'; Codehighlighter1_410_432_Open_Text.style.display='none'; Codehighlighter1_410_432_Closed_Image.style.display='inline'; Codehighlighter1_410_432_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_410_432_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_410_432_Closed_Text.style.display='none'; Codehighlighter1_410_432_Open_Image.style.display='inline'; Codehighlighter1_410_432_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">get</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span id="Codehighlighter1_410_432_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_410_432_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;_maxResults;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_447_470_Open_Image" onclick="this.style.display='none'; Codehighlighter1_447_470_Open_Text.style.display='none'; Codehighlighter1_447_470_Closed_Image.style.display='inline'; Codehighlighter1_447_470_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_447_470_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_447_470_Closed_Text.style.display='none'; Codehighlighter1_447_470_Open_Image.style.display='inline'; Codehighlighter1_447_470_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">set</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span id="Codehighlighter1_447_470_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_447_470_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;_maxResults&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;value;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">override</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">object</span><span style="color: rgb(0, 0, 0);">&nbsp;Execute(ISession&nbsp;session)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_541_932_Open_Image" onclick="this.style.display='none'; Codehighlighter1_541_932_Open_Text.style.display='none'; Codehighlighter1_541_932_Closed_Image.style.display='inline'; Codehighlighter1_541_932_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_541_932_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_541_932_Closed_Text.style.display='none'; Codehighlighter1_541_932_Open_Image.style.display='inline'; Codehighlighter1_541_932_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_541_932_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_541_932_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;hql&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">from&nbsp;Blog&nbsp;blog</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);">&nbsp;(_authorName&nbsp;</span><span style="color: rgb(0, 0, 0);">!=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">)<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hql&nbsp;</span><span style="color: rgb(0, 0, 0);">+=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;where&nbsp;blog.Author&nbsp;=&nbsp;:author</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IQuery&nbsp;q&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;session.CreateQuery(hql);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);">&nbsp;(_authorName&nbsp;</span><span style="color: rgb(0, 0, 0);">!=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">)<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.SetString(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">author</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">,&nbsp;_authorName);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;q.SetMaxResults(_maxResults);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">base</span><span style="color: rgb(0, 0, 0);">.GetResultsArray(</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Blog),&nbsp;q.List(),&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">,&nbsp;</span><span style="color: rgb(0, 0, 255);">false</span><span style="color: rgb(0, 0, 0);">);<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><br>使用我们自定义的类<span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;"></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img id="Codehighlighter1_0_104_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_104_Open_Text.style.display='none'; Codehighlighter1_0_104_Closed_Image.style.display='inline'; Codehighlighter1_0_104_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_0_104_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_0_104_Closed_Text.style.display='none'; Codehighlighter1_0_104_Open_Image.style.display='inline'; Codehighlighter1_0_104_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"><span id="Codehighlighter1_0_104_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);">/**/</span><span id="Codehighlighter1_0_104_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;自定义查询<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="authorName"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top"></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;returns&gt;&lt;/returns&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog[]&nbsp;GetThreeBlogsFromAuthor(&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;authorName&nbsp;)<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_173_335_Open_Image" onclick="this.style.display='none'; Codehighlighter1_173_335_Open_Text.style.display='none'; Codehighlighter1_173_335_Closed_Image.style.display='inline'; Codehighlighter1_173_335_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_173_335_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_173_335_Closed_Text.style.display='none'; Codehighlighter1_173_335_Open_Image.style.display='inline'; Codehighlighter1_173_335_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_173_335_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_173_335_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;QueryWithNamedParameters&nbsp;q&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;QueryWithNamedParameters();<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;q.AuthorName&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;authorName;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;q.MaxResults&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">3</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;(Blog[])&nbsp;ExecuteQuery(q);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><br>看一下简单的测试代码<span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[Test]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;TestCustomQuery()<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_39_254_Open_Image" onclick="this.style.display='none'; Codehighlighter1_39_254_Open_Text.style.display='none'; Codehighlighter1_39_254_Closed_Image.style.display='inline'; Codehighlighter1_39_254_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_39_254_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_39_254_Closed_Text.style.display='none'; Codehighlighter1_39_254_Open_Image.style.display='inline'; Codehighlighter1_39_254_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_39_254_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_39_254_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_StrAuthor&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Terry&nbsp;Lee</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;IList&nbsp;list&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog.GetThreeBlogsFromAuthor(_StrAuthor);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;expectedCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">3</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.IsNotNull(list);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.AreEqual(expectedCount,list.Count);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">五．使用<span lang="EN-US">CallBack<o:p></o:p></span></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">还有一种实现方式是使用<span lang="EN-US">Execute()</span>方法，这种方式与我们前面所讲的自定义查询是差不多的，只不过不用增加额外的自定义类。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[ActiveRecord(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Blogs</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog&nbsp;:&nbsp;ActiveRecordBase<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_63_898_Open_Image" onclick="this.style.display='none'; Codehighlighter1_63_898_Open_Text.style.display='none'; Codehighlighter1_63_898_Closed_Image.style.display='inline'; Codehighlighter1_63_898_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_63_898_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_63_898_Closed_Text.style.display='none'; Codehighlighter1_63_898_Open_Image.style.display='inline'; Codehighlighter1_63_898_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_63_898_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_63_898_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);"><img src="dot.gif"><img src="dot.gif"></span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img id="Codehighlighter1_84_207_Open_Image" onclick="this.style.display='none'; Codehighlighter1_84_207_Open_Text.style.display='none'; Codehighlighter1_84_207_Closed_Image.style.display='inline'; Codehighlighter1_84_207_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_84_207_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_84_207_Closed_Text.style.display='none'; Codehighlighter1_84_207_Open_Image.style.display='inline'; Codehighlighter1_84_207_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_84_207_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);">/**/</span><span id="Codehighlighter1_84_207_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;通过CallBack执行<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="author"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;returns&gt;&lt;/returns&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br><img src="inblock.gif" align="top"><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog[]&nbsp;GetPostsFromAuthor(&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;author&nbsp;)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_275_391_Open_Image" onclick="this.style.display='none'; Codehighlighter1_275_391_Open_Text.style.display='none'; Codehighlighter1_275_391_Closed_Image.style.display='inline'; Codehighlighter1_275_391_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_275_391_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_275_391_Closed_Text.style.display='none'; Codehighlighter1_275_391_Open_Image.style.display='inline'; Codehighlighter1_275_391_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_275_391_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_275_391_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;(Blog[])&nbsp;Execute(&nbsp;</span><span style="color: rgb(0, 0, 255);">typeof</span><span style="color: rgb(0, 0, 0);">(Blog),&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;NHibernateDelegate(GetPostsFromAuthorCallback),&nbsp;author);<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">object</span><span style="color: rgb(0, 0, 0);">&nbsp;GetPostsFromAuthorCallback(ISession&nbsp;session,&nbsp;</span><span style="color: rgb(0, 0, 255);">object</span><span style="color: rgb(0, 0, 0);">&nbsp;instance&nbsp;)<br><img src="inblock.gif" align="top"><br><img id="Codehighlighter1_491_895_Open_Image" onclick="this.style.display='none'; Codehighlighter1_491_895_Open_Text.style.display='none'; Codehighlighter1_491_895_Closed_Image.style.display='inline'; Codehighlighter1_491_895_Closed_Text.style.display='inline';" src="expandedsubblockstart.gif" align="top"><img id="Codehighlighter1_491_895_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_491_895_Closed_Text.style.display='none'; Codehighlighter1_491_895_Open_Image.style.display='inline'; Codehighlighter1_491_895_Open_Text.style.display='inline';" src="contractedsubblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_491_895_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_491_895_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;创建查询</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IQuery&nbsp;query&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;session.CreateQuery(&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">from&nbsp;Blog&nbsp;blog&nbsp;where&nbsp;blog.Author&nbsp;=&nbsp;:author</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;设置参数</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;query.SetString(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">author</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">,&nbsp;(</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">)&nbsp;instance);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;获取结果</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IList&nbsp;results&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;query.List();<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;转化结果为Array</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Blog[]&nbsp;blogs&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog[results.Count];<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;results.CopyTo(blogs,&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;返回结果</span><span style="color: rgb(0, 128, 0);"><br><img src="inblock.gif" align="top"></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;blogs;<br><img src="inblock.gif" align="top"><br><img src="expandedsubblockend.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">编写测试代码<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p></o:p></span></p>
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><img src="none.gif" align="top"><span style="color: rgb(0, 0, 0);">[Test]<br><img src="none.gif" align="top"><br><img src="none.gif" align="top"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;TestGetPostsFromAuthor()<br><img src="none.gif" align="top"><br><img id="Codehighlighter1_46_256_Open_Image" onclick="this.style.display='none'; Codehighlighter1_46_256_Open_Text.style.display='none'; Codehighlighter1_46_256_Closed_Image.style.display='inline'; Codehighlighter1_46_256_Closed_Text.style.display='inline';" src="expandedblockstart.gif" align="top"><img id="Codehighlighter1_46_256_Closed_Image" style="display: none;" onclick="this.style.display='none'; Codehighlighter1_46_256_Closed_Text.style.display='none'; Codehighlighter1_46_256_Open_Image.style.display='inline'; Codehighlighter1_46_256_Open_Text.style.display='inline';" src="contractedblock.gif" align="top"></span><span id="Codehighlighter1_46_256_Closed_Text" style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);"><img src="dot.gif"></span><span id="Codehighlighter1_46_256_Open_Text"><span style="color: rgb(0, 0, 0);">{<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;_StrAuthor&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Terry&nbsp;Lee</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;IList&nbsp;list&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Blog.GetPostsFromAuthor(_StrAuthor);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;expectedCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">4</span><span style="color: rgb(0, 0, 0);">;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.IsNotNull(list);<br><img src="inblock.gif" align="top"><br><img src="inblock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Assert.AreEqual(expectedCount,list.Count);<br><img src="inblock.gif" align="top"><br><img src="expandedblockend.gif" align="top">}</span></span></div>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">关于使用<span lang="EN-US">HQL</span>查询就介绍到这儿了，相信通过<span lang="EN-US">HQL</span>查询可以解决我们开发中的绝大多数的复杂查询问题。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><b style=""><span style="font-size: 10pt; color: rgb(0, 102, 153); line-height: 150%; font-family: 宋体;">参考资料<span lang="EN-US"><o:p></o:p></span></span></b></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 10pt; line-height: 150%; font-family: 宋体;">文中主要内容来自于<span lang="EN-US">Castle</span>的官方网站<span lang="EN-US"><span><a href="http://www.castleproject.org/" class="smarterwiki-linkify">http://www.castleproject.org</a></span><o:p></o:p></span></span></p>
<div id="MySignature">作者：<a href="http://terrylee.cnblogs.com/">TerryLee</a><br>
出处：<a href="http://terrylee.cnblogs.com/">http://terrylee.cnblogs.com</a>
<br>
本文版权归作者和博客园共有，欢迎转载，但未经作者同意必须保留此段声明，且在文章页面明显位置给出原文连接，否则保留追究法律责任的权利。
</div>
<div id="digg_block">
<div id="div_digg">										
	<div class="diggit" onclick="DiggIt(372823,14203,1)"> 
		<span class="diggnum" id="digg_count_372823">0</span>
	</div>
	<div class="buryit" onclick="DiggIt(372823,14203,2)"> 
		<span class="burynum" id="bury_count_372823">0</span>
	</div>
	<div class="clear"></div>
	<span style="display: none;" id="span_isdigged_372823">0</span>	
	<div class="diggword" id="digg_word_372823">(请您对文章做出评价)</div>	
</div>
</div>
<div class="clear"></div>
<div id="post_next_prev">
<a href="http://www.cnblogs.com/Terrylee/archive/2006/04/10/371513.html">« </a> 上一篇：<a href="http://www.cnblogs.com/Terrylee/archive/2006/04/10/371513.html" title="发布于2006-04-10 18:18">Castle ActiveRecord学习实践（6）：延迟加载和使用Where子句</a><br>
<a href="http://www.cnblogs.com/Terrylee/archive/2006/04/12/373493.html">» </a> 下一篇：<a href="http://www.cnblogs.com/Terrylee/archive/2006/04/12/373493.html" title="发布于2006-04-12 17:26">求职新玩法：如今用MSN也可以求职</a><br>
</div>








		</div>
		<div class="postDesc">posted @ 2006-04-12 08:50 <a href="http://www.cnblogs.com/Terrylee/">TerryLee</a> 阅读(12688) <a href="#commentform">评论(21)</a> &nbsp;<a href="http://www.cnblogs.com/Terrylee/admin/EditPosts.aspx?postid=372823">编辑</a> <a href="http://www.cnblogs.com/Terrylee/AddToFavorite.aspx?id=372823">收藏</a> <a href="#" onclick="PutInWz();return false;">网摘</a>  所属分类: <a href="http://www.cnblogs.com/Terrylee/category/48535.html">[11]&nbsp;&nbsp;数据持久</a>, <a href="http://www.cnblogs.com/Terrylee/category/53293.html">[12]&nbsp;&nbsp;开源世界</a></div>
	</div>
	<img src="372823.html" height="1" width="1">
	
<!--
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
<rdf:Description
rdf:about="http://www.cnblogs.com/Terrylee/archive/2006/04/12/372823.html"
dc:identifier="http://www.cnblogs.com/Terrylee/archive/2006/04/12/372823.html"
dc:title=""
trackback:ping="http://www.cnblogs.com/Terrylee/services/trackbacks/372823.aspx" />
</rdf:RDF>
-->

</div><!--end: topics 文章、评论容器-->
<a name="pagedcomment"></a>
<!--done-->
<br>
<div class="feedback_area_title">发表评论</div>
<div class="feedbackNoItems"><span id="span_comment_maxid" style="display: none;">1200634</span></div>
	

		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("wujun",414709,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(414709,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl00_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl00$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl00_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#414709">#1楼</a><a name="414709" id="comment_anchor_414709"></a>2006-06-01 11:34 | <a id="Comments1_CommentList_ctl00_NameLink" target="_blank">wujun[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_414709" class="blog_comment_body">Castle ActiveRecord的HQL查询语句，是先把要用到的查询的语句类型在类中定义好，然后再去调用相关的查询语句。在实际过程中，这种方式不够灵活。因为我们要用到某种查询语句，要先去定义它（做好查询模板），然后才能去赋变量调用它，不能用没有定义的语句。不知道我的理解是否正确。</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("TerryLee",414740,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(414740,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=TerryLee" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl01_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl01$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl01_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#414740">#2楼</a><a name="414740" id="comment_anchor_414740"></a>[<span class="louzhu">楼主</span>]2006-06-01 11:51 | <a id="Comments1_CommentList_ctl01_NameLink" href="http://www.cnblogs.com/Terrylee/" target="_top">TerryLee</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/TerryLee" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_414740" class="blog_comment_body">@wujun
<br>呵呵，你说的这段话我不是很明白，“查询的语句类型在类中定义好”，什么是语句类型？
<br>
<br>另外HQL也不是Castle AR的，它最早是在Hibernate中使用的，后来在NHibernate也是使用它，Castle AR既然在底层封装了NH，所以也只能使用它了。HQL是一个完全面向的查询语句，利用它我们可以解决AR中部分不能解决的复杂问题，怎么能说是不够灵活呢？</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("wujun",415613,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(415613,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl02_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl02$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl02_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#415613">#3楼</a><a name="415613" id="comment_anchor_415613"></a>2006-06-02 10:54 | <a id="Comments1_CommentList_ctl02_NameLink" target="_blank">wujun[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_415613" class="blog_comment_body">我的意思是不是先把一些查询条件在类中先定义好,在调用时把SQL查询变量值传递给相关类中的查询语句.</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("chaochao",451259,"MMimnp+SZTo67eaCPoqOMO9o0FPNCriwM2J3zgIpFtNt7cPxayUIsg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(451259,"MMimnp+SZTo67eaCPoqOMO9o0FPNCriwM2J3zgIpFtNt7cPxayUIsg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=chaochao" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl03_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl03$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl03_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#451259">#4楼</a><a name="451259" id="comment_anchor_451259"></a>2006-07-15 10:57 | <a id="Comments1_CommentList_ctl03_NameLink" href="http://www.cnblogs.com/woshichaoren/" target="_top">chaochao</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/chaochao" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_451259" class="blog_comment_body">请问我查询POST后还需要显示出BLOG的名字，这种该怎么做呢，因为POST类中不包含BLOG中的字段信息</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("TerryLee",452171,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(452171,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=TerryLee" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl04_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl04$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl04_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#452171">#5楼</a><a name="452171" id="comment_anchor_452171"></a>[<span class="louzhu">楼主</span>]2006-07-16 11:17 | <a id="Comments1_CommentList_ctl04_NameLink" href="http://www.cnblogs.com/Terrylee/" target="_top">TerryLee</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/TerryLee" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_452171" class="blog_comment_body">@chaochao
<br>Post类中不包含Blog中的字段信息？
<br>
<br>  [BelongsTo("post_blogid")]
<br>
<br>    public Blog Blog
<br>
<br>    {
<br>
<br>        get { return _blog; }
<br>
<br>        set { _blog = value; }
<br>
<br>    }
<br></span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("chaochao",452689,"MMimnp+SZTo67eaCPoqOMO9o0FPNCriwM2J3zgIpFtNt7cPxayUIsg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(452689,"MMimnp+SZTo67eaCPoqOMO9o0FPNCriwM2J3zgIpFtNt7cPxayUIsg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=chaochao" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl05_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl05$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl05_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#452689">#6楼</a><a name="452689" id="comment_anchor_452689"></a>2006-07-17 10:40 | <a id="Comments1_CommentList_ctl05_NameLink" href="http://www.cnblogs.com/woshichaoren/" target="_top">chaochao</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/chaochao" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_452689" class="blog_comment_body">谢谢TerryLee 
<br>如果我做联合查询,那么返回的数据就不会是一个实体,这个时候我如何把他绑定到一个实体,动态创建一个实体类吗?</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("ditto",476924,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(476924,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl06_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl06$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl06_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#476924">#7楼</a><a name="476924" id="comment_anchor_476924"></a>2006-08-15 00:49 | <a id="Comments1_CommentList_ctl06_NameLink" target="_blank">ditto[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_476924" class="blog_comment_body">怎么做联合查询呢，麻烦TerryLee举个例子好吗?
<br>比如：我想查询所有Post.Name like '%Castle%' 的相关 Blog集合的代码如何来写呢?</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("塞月",521386,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(521386,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl07_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl07$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl07_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#521386">#8楼</a><a name="521386" id="comment_anchor_521386"></a>2006-10-04 22:51 | <a id="Comments1_CommentList_ctl07_NameLink" target="_blank">塞月[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_521386" class="blog_comment_body">数据库如果Category列是text格式的，而使用
<br>    SimpleQuery query = new SimpleQuery(
<br>
<br>            typeof(Post),
<br>
<br>            @"from Post post where post.Category = ?",
<br>
<br>            _strCategory
<br>
<br>            );
<br>
<br>
<br>        return (Post[])ExecuteQuery(query);
<br>
<br>跑到最后一行就挂掉了。如果换成VARCHAR，马上就OK。
<br>这是什么怪毛病啊。</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("塞月",521389,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(521389,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl08_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl08$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl08_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#521389">#9楼</a><a name="521389" id="comment_anchor_521389"></a>2006-10-04 22:54 | <a id="Comments1_CommentList_ctl08_NameLink" target="_blank">塞月[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_521389" class="blog_comment_body">◎ditto
<br>
<br>SimpleQuery query=new SimpleQuery(
<br>				typeof(Post),
<br>				@"from Post post where post.Contents like ?",
<br>				"%"+_content+"%");
<br>
<br>			return (Post[])ExecuteQuery(query);
<br>
<br>这样写就可以了。不过注意我上面写的数据库的格式。Text就不成。</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("wang",576020,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(576020,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl09_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl09$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl09_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#576020">#10楼</a><a name="576020" id="comment_anchor_576020"></a>2006-11-29 10:00 | <a id="Comments1_CommentList_ctl09_NameLink" target="_blank">wang[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_576020" class="blog_comment_body">Hql语句怎么不能用Select呢,只有使用聚合函数才能用啊
<br>万一出现这种"select '" + strName + "' as name 不知道怎么解决哦</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("TerryLee",576826,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(576826,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=TerryLee" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl10_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl10$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl10_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#576826">#11楼</a><a name="576826" id="comment_anchor_576826"></a>[<span class="louzhu">楼主</span>]2006-11-29 21:20 | <a id="Comments1_CommentList_ctl10_NameLink" href="http://www.cnblogs.com/Terrylee/" target="_top">TerryLee</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/TerryLee" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_576826" class="blog_comment_body">@wang
<br>看看这篇吧
<br><a target="_new" href="http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html">http://www.hibernate.org/hib_docs/reference/en/html/queryhql.html</a></span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("charleschen",586570,"j06E5/CfgXxP4QkAFEqjXGnEYX/uc0K6D9O3P5IwFEgvvHenH8avbg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(586570,"j06E5/CfgXxP4QkAFEqjXGnEYX/uc0K6D9O3P5IwFEgvvHenH8avbg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=charleschen" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl11_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl11$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl11_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#586570">#12楼</a><a name="586570" id="comment_anchor_586570"></a>2006-12-08 16:27 | <a id="Comments1_CommentList_ctl11_NameLink" href="http://www.cnblogs.com/trisaeyes/" target="_top">charleschen</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/charleschen" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_586570" class="blog_comment_body">作上面的例子的时候
<br>总是报出 ：‘Could not perform Execute for User’
<br>
<br>
<br>下面是我的代码
<br>   public static User[] GetUser(int _id)
<br>        {
<br>            SimpleQuery query = new SimpleQuery(
<br>           typeof(User),
<br>
<br>           @"from Users users where users.LogonID = ?",
<br>
<br>           _id
<br>
<br>           );
<br>
<br>
<br>            return (User[])ExecuteQuery(query);
<br>}
<br>
<br>调用是
<br>         User[] blog = User.GetUser(2);
<br>
<br>            System.Console.WriteLine(blog.Length);</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("charleschen",586604,"j06E5/CfgXxP4QkAFEqjXGnEYX/uc0K6D9O3P5IwFEgvvHenH8avbg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(586604,"j06E5/CfgXxP4QkAFEqjXGnEYX/uc0K6D9O3P5IwFEgvvHenH8avbg==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=charleschen" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl12_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl12$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl12_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#586604">#13楼</a><a name="586604" id="comment_anchor_586604"></a>2006-12-08 16:53 | <a id="Comments1_CommentList_ctl12_NameLink" href="http://www.cnblogs.com/trisaeyes/" target="_top">charleschen</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/charleschen" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_586604" class="blog_comment_body">自己又试了下，
<br>      public static User[] GetPostsInterval(int cname)
<br>        {
<br>            //注意：Hql中大小写区分
<br>            string hql = @"from User c where c.LogonID=?";
<br>            SimpleQuery sq = new SimpleQuery(typeof(User), hql, cname);
<br>
<br>            return (User[])ExecuteQuery(sq);
<br>
<br>        }
<br>
<br>
<br>换成这样又可以了，，，，不知道为什么，郁闷</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("TerryLee",589431,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(589431,"K82dKaku/JiNNC/PeczvjL4gReWZAaP9pFNyUxpHUmhQUsdw4bZYEA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=TerryLee" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl13_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl13$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl13_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#589431">#14楼</a><a name="589431" id="comment_anchor_589431"></a>[<span class="louzhu">楼主</span>]2006-12-11 23:28 | <a id="Comments1_CommentList_ctl13_NameLink" href="http://www.cnblogs.com/Terrylee/" target="_top">TerryLee</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/TerryLee" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_589431" class="blog_comment_body">@charleschen
<br>看看第一个HQL语句：
<br>Users users，有Users这个实体类吗？</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("jovichina",630234,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(630234,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl14_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl14$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl14_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#630234">#15楼</a><a name="630234" id="comment_anchor_630234"></a>2007-01-25 14:21 | <a id="Comments1_CommentList_ctl14_NameLink" target="_blank">jovichina[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_630234" class="blog_comment_body">hql里面一定要用别名么？如果上面的simplequery里的语句改为@"from Post  where Post.Category = ?"就出错“undefined alias or unknown mapping”这是为什么呢</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("shareach",837306,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(837306,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl15_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl15$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl15_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#837306">#16楼</a><a name="837306" id="comment_anchor_837306"></a>2007-07-31 10:53 | <a id="Comments1_CommentList_ctl15_NameLink" rel="nofllow" href="http://www.cnitblog.com/r.aspx?url=http://sps.shareach.com" target="_top">shareach[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_837306" class="blog_comment_body">我刚开始看castle，看了你ar和ioc部分的文章。我想问一下怎么调用存储过程：
<br>我在存储过程只是简单的对一张表做了个select，但是无法绑定到对象，提示序列化出问题，做了跟踪，发现是ar和hr这层对字段进行了从命名，如 Person 字段 变成了 _Person01之类，不知道有没有解决方法，在实际应用种一些复杂的分析查询还是需要存储过程支持的。谢谢。</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("firedemoning",842286,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(842286,"")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl16_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl16$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl16_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#842286">#17楼</a><a name="842286" id="comment_anchor_842286"></a>2007-08-03 21:11 | <a id="Comments1_CommentList_ctl16_NameLink" rel="nofllow" href="http://www.cnitblog.com/r.aspx?url=http://h.l-x@163.com" target="_top">firedemoning[未注册用户]</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_842286" class="blog_comment_body">请问题一下.它中的模糊查询什么办.</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("破甲",850326,"T9ftgRTz4j+FdHiX40+bBTsJPhOBEfpqTm+x1WNdUuez5/hHQq/SKw==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(850326,"T9ftgRTz4j+FdHiX40+bBTsJPhOBEfpqTm+x1WNdUuez5/hHQq/SKw==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=%e7%a0%b4%e7%94%b2" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl17_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl17$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl17_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#850326">#18楼</a><a name="850326" id="comment_anchor_850326"></a>2007-08-10 10:12 | <a id="Comments1_CommentList_ctl17_NameLink" href="http://www.cnblogs.com/pojia/" target="_top">破甲</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/%e7%a0%b4%e7%94%b2" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_850326" class="blog_comment_body">string hql = "From Test test where test.a = ? and teat.b = ? ";
<br>string[] paras = new string[2] {"222","444"};
<br>IActiveRecordQuery&lt;T[]&gt; query = new SimpleQuery&lt;T&gt;(typeof(T), QueryLanguage.Hql, hql, paras);
<br>为什么 paras是数组就不行了!!!</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("江大鱼",1119527,"wTaI63x6U+9YyviKShf2N+mlRi67q1Rpx9RrFnPb2TzaNLp9wg7AgA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(1119527,"wTaI63x6U+9YyviKShf2N+mlRi67q1Rpx9RrFnPb2TzaNLp9wg7AgA==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=%e6%b1%9f%e5%a4%a7%e9%b1%bc" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl18_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl18$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl18_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#1119527">#19楼</a><a name="1119527" id="comment_anchor_1119527"></a>2008-03-24 12:52 | <a id="Comments1_CommentList_ctl18_NameLink" href="http://www.cnblogs.com/jzywh/" target="_top">江大鱼</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/%e6%b1%9f%e5%a4%a7%e9%b1%bc" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_1119527" class="blog_comment_body">update 语句能用在 SimpleQuery 里面么？</span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("零缺陷生活",1200615,"z/upnGADiIAAfwlFCS0jjbudc5Hlcse0WTjDp2Qa1+wKAFTutyy1cQ==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(1200615,"z/upnGADiIAAfwlFCS0jjbudc5Hlcse0WTjDp2Qa1+wKAFTutyy1cQ==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=%e9%9b%b6%e7%bc%ba%e9%99%b7%e7%94%9f%e6%b4%bb" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl19_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl19$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl19_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#1200615">#20楼</a><a name="1200615" id="comment_anchor_1200615"></a>2008-05-16 14:44 | <a id="Comments1_CommentList_ctl19_NameLink" href="http://www.cnblogs.com/zerobug/" target="_top">零缺陷生活</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/%e9%9b%b6%e7%bc%ba%e9%99%b7%e7%94%9f%e6%b4%bb" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_1200615" class="blog_comment_body">--引用--------------------------------------------------
<br>
<br>--------------------------------------------------------
<br>这个问题怎么没有答复的?
<br></span><br>
			</div>
		</div>
	
		<div class="feedbackItem">
			<div class="feedbackListSubtitle">
				<div class="feedbackManage">
					&nbsp;&nbsp;<a onclick='ReplyComment("零缺陷生活",1200634,"z/upnGADiIAAfwlFCS0jjbudc5Hlcse0WTjDp2Qa1+wKAFTutyy1cQ==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">回复</a>&nbsp;&nbsp;<a onclick='QuoteComment(1200634,"z/upnGADiIAAfwlFCS0jjbudc5Hlcse0WTjDp2Qa1+wKAFTutyy1cQ==")' href="http://terrylee.cnblogs.com/archive/2006/04/12/372823.html#commentform">引用</a>&nbsp;&nbsp;<a title="查看该作者发表过的评论" href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=%e9%9b%b6%e7%bc%ba%e9%99%b7%e7%94%9f%e6%b4%bb" target="_top">查看</a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl20_DeleteLink" href="javascript:__doPostBack('Comments1$CommentList$ctl20$DeleteLink','')"></a>&nbsp;&nbsp;<a id="Comments1_CommentList_ctl20_EditLink" causesvalidation="False"></a>
				</div>
				<a href="#1200634">#21楼</a><a name="1200634" id="comment_anchor_1200634"></a><a name="Post"></a>2008-05-16 14:51 | <a id="Comments1_CommentList_ctl20_NameLink" href="http://www.cnblogs.com/zerobug/" target="_top">零缺陷生活</a>&nbsp;<a href="http://space.cnblogs.com/msg/send/%e9%9b%b6%e7%bc%ba%e9%99%b7%e7%94%9f%e6%b4%bb" title="给此人发送站内短消息" class="sendMsg2This">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
			</div>
			<div class="feedbackCon">
				<span id="comment_body_1200634" class="blog_comment_body">如果我做联合查询,那么返回的数据就不会是一个实体,这个时候我如何把他绑定到一个实体,动态创建一个实体类吗?
<br>============================
<br>这个问题怎么处理???</span><br>
			</div>
		</div>
	

<div id="ctl05_comment_form" class="commentform">




<div id="ctl05_divLoginPannel">
<div class="login_tips">注册用户登录后才能发表评论，请 <a href="http://passport.cnblogs.com/login.aspx?ReturnUrl=http%3a%2f%2fterrylee.cnblogs.com%2farchive%2f2006%2f04%2f12%2f372823.html%3flogin%3d1%23commentform" class="underline">登录</a> 或 <a href="http://passport.cnblogs.com/register.aspx?ReturnUrl=http%3a%2f%2fterrylee.cnblogs.com%2farchive%2f2006%2f04%2f12%2f372823.html%23Bottom2" class="underline">注册</a> 。</div>
</div>

<div class="itnews c_ad_block" id="itnews">
<a href="http://news.cnblogs.com/" target="_top">IT新闻</a>:<br>

          ·  <a href="http://news.cnblogs.com/n/55114/" target="_top">谷歌联手亚马逊在英国推出Android音乐商店</a><br>
	
          ·  <a href="http://news.cnblogs.com/n/55112/" target="_top">Facebook成为Apache软件基金会黄金赞助商</a><br>
	
          ·  <a href="http://news.cnblogs.com/n/55111/" target="_top">IBM荣获2009年美国专利申请冠军</a><br>
	
          ·  <a href="http://news.cnblogs.com/n/55100/" target="_top">麦当劳美国餐馆Wi-Fi服务全面免费</a><br>
	
          ·  <a href="http://news.cnblogs.com/n/55097/" target="_top">Java SE 6更新，性能大幅提升</a><br>
	
</div>


<div id="ad_under_comment" class="c_ad_block">
<a href="http://a4.yeshj.com/rd/34138/" target="_top">每天10分钟，轻松学英语</a><br><br>
<div id="google_ads_div_cnblogs_blogpost_bottom1">
<iframe src="index_1.html" style="border: 0pt none ;" marginheight="0" marginwidth="0" name="google_ads_iframe_cnblogs_blogpost_bottom1" id="google_ads_iframe_cnblogs_blogpost_bottom1" scrolling="no" frameborder="0" height="60" width="468"></iframe></div>

<br>
<div id="google_ads_div_cnblogs_blogpost_bottom">
<iframe src="index_2.html" style="border: 0pt none ;" marginheight="0" marginwidth="0" name="google_ads_iframe_cnblogs_blogpost_bottom" id="google_ads_iframe_cnblogs_blogpost_bottom" scrolling="no" frameborder="0" height="250" width="300"></iframe></div>

</div>
<div id="site_nav_under" class="c_ad_block">
网站导航：<br>
<a href="http://www.cnblogs.com/" target="_top">博客园首页</a> &nbsp;<a href="http://news.cnblogs.com/" target="_top">IT新闻</a> &nbsp;<a href="http://home.cnblogs.com/" target="_top">个人主页</a> &nbsp;<a href="http://home.cnblogs.com/ing/" target="_top">闪存</a> &nbsp;<a href="http://job.cnblogs.com/" target="_top">程序员招聘</a> &nbsp;<a href="http://space.cnblogs.com/" target="_top">社区</a> &nbsp;<a href="http://space.cnblogs.com/q/" target="_top">博问</a> &nbsp;<a href="http://wz.cnblogs.com/" target="_top">网摘</a>
</div>
<div id="ad_under_comment2" class="c_ad_block">
<a href="http://www.china-pub.com/STATIC07/0912/zh_ndcx_091212.asp" target="_top"><img src="chinapub_20091222.jpg" alt="" style="border: 0px none ;"></a><br>
<a href="http://www.china-pub.com/itbook/" target="_top">China-pub 计算机图书网上专卖店！6.5万品种2-8折！</a><br>
<a href="http://www.china-pub.com/static07/0901/zh_jueba_090121.asp" target="_top">China-Pub 计算机绝版图书按需印刷服务</a><br>
</div>

<div id="relative_search"><br><b>相关搜索:</b><br> <a href="http://zzk.cnblogs.com/s?w=%5b11%5d%e6%95%b0%e6%8d%ae%e6%8c%81%e4%b9%85" target="_top">[11]数据持久</a> <a href="http://zzk.cnblogs.com/s?w=%5b12%5d%e5%bc%80%e6%ba%90%e4%b8%96%e7%95%8c" target="_top">[12]开源世界</a> </div><div id="relative_search"><br><b>在知识库中查看：</b><br> <a href="http://kb.cnblogs.com/a/372823/">Castle ActiveRecord学习实践（7）：使用HQL查询</a></div>

</div>


				
	</div><!--end: forFlow -->
	</div><!--end: mainContent 主体内容容器-->

	<div id="sideBar">
		<div id="sideBarMain">
			
<!--done-->
<div class="newsItem">
<h3 class="catListTitle">公告</h3>
	<div class="box">
<h3 class="boxtitle">个人简介</h3>
<ul>
    <li><img src="o_terrylee.png" alt=""></li>
    <li>网名：TerryLee</li>
    <li>本名：李会军</li>
    <li>位置：中国 北京</li>
    <li>请大家发邮件至</li>
    <li><img src="o_terrylee_cnblogs.png" alt="TerryLee"></li>
   </ul>
</div>
<div class="box">
<h3 class="boxtitle">关注我</h3>
<a href="http://twitter.com/TerryLeeTech"><img src="followme.png" alt="在Twitter上关注我" style="margin-left: 5px;"></a>
<a href="http://www.dotneteye.cn/blog/syndication.axd"><img src="feedadd.png" alt="订阅我的Blog" style="margin-left: 15px;"></a>
</div>
<div class="box">
<h3 class="boxtitle">我的著作</h3>
<ul>
    <li><img alt="" src="o_silverlight02.jpg" border="0"></li>
    <li>官网：<a href="http://www.dotneteye.cn/silverlight">《Silverlight 2完美征程》</a></li>
</ul>
</div>
<div class="box">
<h3 class="boxtitle">我在说</h3>
<ul id="twitter_update_list"></ul>
<a href="http://twitter.com/TerryLeeTech" id="twitter-link" style="display: block; text-align: right;">follow me on Twitter</a>
</div>
<div class="box">
<h3 class="boxtitle">MVP配置</h3>
<ul>
    <li><img alt="" src="o_o_mvp_horizontal_fullcolor_182_74.png" border="0"></li>
    <li><a href="https://mvp.support.microsoft.com/profile=8FECB25C-0CBC-432F-9F25-E2698DDF3CA1">MVP配置</a></li>
</ul>
</div>
<div class="box">
<h3 class="boxtitle">个人主页</h3>
<ul>
<li>
<a href="http://www.dotneteye.cn/"><img src="o_dotnet.png" alt=""></a>
</li>
</ul>
</div>
<div class="box">
<h3 class="boxtitle">版权声明</h3>
    <ul>
        <li>本站采用<a href="http://creativecommons.org/licenses/by-nc/2.5/" target="_top" rel="license">创作共用</a>许可
        署名，非商业
<a href="http://www.51.la/?00260513" target="_top"><img alt="51.la 专业、免费、强健的访问统计" src="icon_8.gif" style="border: medium none ;"></a>
<img style="width: 0px; height: 0px;" src="go.asp">
        </li></ul>
    </div>
<div class="box">
<h3 class="boxtitle">绿色通道</h3>
  <ul>
   <li>1.<a href="http://www.cnblogs.com/Terrylee/archive/2008/03/09/Silverlight2-step-by-step-Tutorials.html">一步一步学Silverlight 2系列</a></li>
<li>2.<a href="http://www.cnblogs.com/Terrylee/archive/2006/07/17/334911.html">.NET设计模式系列文章</a></li>
<li>3.<a href="http://www.cnblogs.com/Terrylee/archive/2006/11/12/558683.html">ASP.NET AJAX入门系列</a></li>
<li>4.<a href="http://www.cnblogs.com/Terrylee/archive/2006/04/28/387503.html">Castle开发系列文章</a></li>
<li>5.<a href="http://www.cnblogs.com/Terrylee/archive/2006/08/01/464591.html">Enterprise Library系列</a></li>
<li><a href="http://dotnet.cnblogs.com/">博客园.NET频道</a></li>
  </ul>
</div><div id="profile_block"><a href="http://home.cnblogs.com/Terrylee/" target="_top">我的主页</a>&nbsp; <a href="http://home.cnblogs.com/Terrylee/detail/" target="_top">个人资料</a><br><a href="http://home.cnblogs.com/Terrylee/ing/" target="_top">我的闪存</a>&nbsp; <a href="http://space.cnblogs.com/msg/send/TerryLee" target="_top">发短消息</a></div>
</div>

			
			
			<div id="leftcontentcontainer">
				

<div class="mySearch">
<h3 class="catListTitle">搜索</h3>
<div class="div_my_zzk"><input value="" id="q" onkeydown="return zzk_go_enter(event);" class="input_my_zzk" type="text">&nbsp;<input onclick="zzk_go()" value="找找看" id="btnZzk" class="btn_my_zzk" type="button"></div>
</div>
<div class="catListPostCategory">
<h3 class="catListTitle">随笔分类</h3>

<ul>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl01_Link" href="http://www.cnblogs.com/Terrylee/category/48779.html">[01]&nbsp;&nbsp;.NET大本营(50)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl01_RssLink" title="Subscribe to [01]&amp;nbsp;&amp;nbsp;.NET大本营(50)" href="http://www.cnblogs.com/Terrylee/category/48779.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl02_Link" href="http://www.cnblogs.com/Terrylee/category/161309.html">[02]&nbsp;&nbsp;探微知著CLR</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl02_RssLink" title="Subscribe to [02]&amp;nbsp;&amp;nbsp;探微知著CLR" href="http://www.cnblogs.com/Terrylee/category/161309.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl03_Link" href="http://www.cnblogs.com/Terrylee/category/78190.html">[03]&nbsp;&nbsp;银光点亮世界(62)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl03_RssLink" title="Subscribe to [03]&amp;nbsp;&amp;nbsp;银光点亮世界(62)" href="http://www.cnblogs.com/Terrylee/category/78190.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl04_Link" href="http://www.cnblogs.com/Terrylee/category/36734.html">[04]&nbsp;&nbsp;WCF后传(17)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl04_RssLink" title="Subscribe to [04]&amp;nbsp;&amp;nbsp;WCF后传(17)" href="http://www.cnblogs.com/Terrylee/category/36734.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl05_Link" href="http://www.cnblogs.com/Terrylee/category/36516.html">[05]&nbsp;&nbsp;架构与设计(24)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl05_RssLink" title="Subscribe to [05]&amp;nbsp;&amp;nbsp;架构与设计(24)" href="http://www.cnblogs.com/Terrylee/category/36516.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl06_Link" href="http://www.cnblogs.com/Terrylee/category/48778.html">[06]&nbsp;&nbsp;LINQ之美(4)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl06_RssLink" title="Subscribe to [06]&amp;nbsp;&amp;nbsp;LINQ之美(4)" href="http://www.cnblogs.com/Terrylee/category/48778.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl07_Link" href="http://www.cnblogs.com/Terrylee/category/115628.html">[07]&nbsp;&nbsp;AJAX风云(15)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl07_RssLink" title="Subscribe to [07]&amp;nbsp;&amp;nbsp;AJAX风云(15)" href="http://www.cnblogs.com/Terrylee/category/115628.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl08_Link" href="http://www.cnblogs.com/Terrylee/category/37512.html">[08]&nbsp;&nbsp;Web开发(66)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl08_RssLink" title="Subscribe to [08]&amp;nbsp;&amp;nbsp;Web开发(66)" href="http://www.cnblogs.com/Terrylee/category/37512.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl09_Link" href="http://www.cnblogs.com/Terrylee/category/124829.html">[09]&nbsp;&nbsp;依赖注入(14)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl09_RssLink" title="Subscribe to [09]&amp;nbsp;&amp;nbsp;依赖注入(14)" href="http://www.cnblogs.com/Terrylee/category/124829.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl10_Link" href="http://www.cnblogs.com/Terrylee/category/36514.html">[10]&nbsp;&nbsp;模式与实践(68)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl10_RssLink" title="Subscribe to [10]&amp;nbsp;&amp;nbsp;模式与实践(68)" href="http://www.cnblogs.com/Terrylee/category/36514.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl11_Link" href="http://www.cnblogs.com/Terrylee/category/48535.html">[11]&nbsp;&nbsp;数据持久(19)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl11_RssLink" title="Subscribe to [11]&amp;nbsp;&amp;nbsp;数据持久(19)" href="http://www.cnblogs.com/Terrylee/category/48535.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl12_Link" href="http://www.cnblogs.com/Terrylee/category/53293.html">[12]&nbsp;&nbsp;开源世界(35)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl12_RssLink" title="Subscribe to [12]&amp;nbsp;&amp;nbsp;开源世界(35)" href="http://www.cnblogs.com/Terrylee/category/53293.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl13_Link" href="http://www.cnblogs.com/Terrylee/category/44974.html">[13]&nbsp;&nbsp;代码生成(23)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl13_RssLink" title="Subscribe to [13]&amp;nbsp;&amp;nbsp;代码生成(23)" href="http://www.cnblogs.com/Terrylee/category/44974.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl14_Link" href="http://www.cnblogs.com/Terrylee/category/48958.html">[14]&nbsp;&nbsp;测试与重构(3)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl14_RssLink" title="Subscribe to [14]&amp;nbsp;&amp;nbsp;测试与重构(3)" href="http://www.cnblogs.com/Terrylee/category/48958.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl15_Link" href="http://www.cnblogs.com/Terrylee/category/124830.html">[15]&nbsp;&nbsp;工作流基础</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl15_RssLink" title="Subscribe to [15]&amp;nbsp;&amp;nbsp;工作流基础" href="http://www.cnblogs.com/Terrylee/category/124830.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl16_Link" href="http://www.cnblogs.com/Terrylee/category/162553.html">[16]&nbsp;&nbsp;技术曲苑杂坛(1)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl16_RssLink" title="Subscribe to [16]&amp;nbsp;&amp;nbsp;技术曲苑杂坛(1)" href="http://www.cnblogs.com/Terrylee/category/162553.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl17_Link" href="http://www.cnblogs.com/Terrylee/category/160783.html">[17]&nbsp;&nbsp;并行编程(1)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl17_RssLink" title="Subscribe to [17]&amp;nbsp;&amp;nbsp;并行编程(1)" href="http://www.cnblogs.com/Terrylee/category/160783.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl18_Link" href="http://www.cnblogs.com/Terrylee/category/58451.html">[18]&nbsp;&nbsp;动态语言(4)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl18_RssLink" title="Subscribe to [18]&amp;nbsp;&amp;nbsp;动态语言(4)" href="http://www.cnblogs.com/Terrylee/category/58451.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl19_Link" href="http://www.cnblogs.com/Terrylee/category/187123.html">[19] 写作生涯(2)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl19_RssLink" title="Subscribe to [19] 写作生涯(2)" href="http://www.cnblogs.com/Terrylee/category/187123.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl20_Link" href="http://www.cnblogs.com/Terrylee/category/36735.html">[20]&nbsp;&nbsp;推荐系列(32)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl20_RssLink" title="Subscribe to [20]&amp;nbsp;&amp;nbsp;推荐系列(32)" href="http://www.cnblogs.com/Terrylee/category/36735.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl21_Link" href="http://www.cnblogs.com/Terrylee/category/36515.html">[21]&nbsp;&nbsp;数据库相关(18)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl21_RssLink" title="Subscribe to [21]&amp;nbsp;&amp;nbsp;数据库相关(18)" href="http://www.cnblogs.com/Terrylee/category/36515.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl22_Link" href="http://www.cnblogs.com/Terrylee/category/43288.html">[30]&nbsp;&nbsp;前沿报道(28)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl22_RssLink" title="Subscribe to [30]&amp;nbsp;&amp;nbsp;前沿报道(28)" href="http://www.cnblogs.com/Terrylee/category/43288.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl23_Link" href="http://www.cnblogs.com/Terrylee/category/36511.html">[31]&nbsp;&nbsp;项目管理(3)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl23_RssLink" title="Subscribe to [31]&amp;nbsp;&amp;nbsp;项目管理(3)" href="http://www.cnblogs.com/Terrylee/category/36511.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl24_Link" href="http://www.cnblogs.com/Terrylee/category/148211.html">[32]&nbsp;&nbsp;我点我评(2)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl24_RssLink" title="Subscribe to [32]&amp;nbsp;&amp;nbsp;我点我评(2)" href="http://www.cnblogs.com/Terrylee/category/148211.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl25_Link" href="http://www.cnblogs.com/Terrylee/category/51852.html">[33]&nbsp;&nbsp;我思我考(13)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl25_RssLink" title="Subscribe to [33]&amp;nbsp;&amp;nbsp;我思我考(13)" href="http://www.cnblogs.com/Terrylee/category/51852.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl26_Link" href="http://www.cnblogs.com/Terrylee/category/51900.html">[34]&nbsp;&nbsp;社区活动(9)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl26_RssLink" title="Subscribe to [34]&amp;nbsp;&amp;nbsp;社区活动(9)" href="http://www.cnblogs.com/Terrylee/category/51900.html/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl27_Link" href="http://www.cnblogs.com/Terrylee/category/36507.html">[35]&nbsp;&nbsp;东拉西扯(37)</a> <a id="SingleColumn1_Categories_CatList_ctl00_LinkList_ctl27_RssLink" title="Subscribe to [35]&amp;nbsp;&amp;nbsp;东拉西扯(37)" href="http://www.cnblogs.com/Terrylee/category/36507.html/rss">(rss)</a></li>

</ul>

</div>

<div class="catListPostArchive">
<h3 class="catListTitle">随笔档案</h3>

<ul>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl01_Link" href="http://www.cnblogs.com/Terrylee/archive/2009/08.html">2009年8月 (1)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl02_Link" href="http://www.cnblogs.com/Terrylee/archive/2009/05.html">2009年5月 (1)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl03_Link" href="http://www.cnblogs.com/Terrylee/archive/2009/04.html">2009年4月 (3)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl04_Link" href="http://www.cnblogs.com/Terrylee/archive/2009/01.html">2009年1月 (2)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl05_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/12.html">2008年12月 (4)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl06_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/11.html">2008年11月 (10)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl07_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/10.html">2008年10月 (12)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl08_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/09.html">2008年9月 (3)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl09_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/08.html">2008年8月 (5)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl10_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/07.html">2008年7月 (13)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl11_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/06.html">2008年6月 (10)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl12_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/03.html">2008年3月 (41)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl13_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/02.html">2008年2月 (5)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl14_Link" href="http://www.cnblogs.com/Terrylee/archive/2008/01.html">2008年1月 (13)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl15_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/12.html">2007年12月 (15)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl16_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/11.html">2007年11月 (7)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl17_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/07.html">2007年7月 (3)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl18_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/04.html">2007年4月 (2)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl19_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/03.html">2007年3月 (4)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl20_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/02.html">2007年2月 (2)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl21_Link" href="http://www.cnblogs.com/Terrylee/archive/2007/01.html">2007年1月 (6)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl22_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/12.html">2006年12月 (18)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl23_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/11.html">2006年11月 (32)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl24_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/10.html">2006年10月 (35)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl25_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/09.html">2006年9月 (19)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl26_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/08.html">2006年8月 (16)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl27_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/07.html">2006年7月 (23)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl28_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/06.html">2006年6月 (11)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl29_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/05.html">2006年5月 (13)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl30_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/04.html">2006年4月 (24)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl31_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/03.html">2006年3月 (17)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl32_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/02.html">2006年2月 (13)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl33_Link" href="http://www.cnblogs.com/Terrylee/archive/2006/01.html">2006年1月 (13)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl34_Link" href="http://www.cnblogs.com/Terrylee/archive/2005/12.html">2005年12月 (38)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl35_Link" href="http://www.cnblogs.com/Terrylee/archive/2005/11.html">2005年11月 (20)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl36_Link" href="http://www.cnblogs.com/Terrylee/archive/2005/10.html">2005年10月 (27)</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl01_LinkList_ctl37_Link" href="http://www.cnblogs.com/Terrylee/archive/2005/09.html">2005年9月 (10)</a> </li>

</ul>

</div>

<div class="catList">
<h3 class="catListTitle">个人站点</h3>

<ul>

<li><a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl01_Link" href="http://terrylee.blog.51cto.com/" target="_top">TerryLee @ 51CTO</a> <a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl01_RssLink" title="Subscribe to TerryLee @ 51CTO" href="http://terrylee.blog.51cto.com/">(rss)</a></li>
<li style="margin-top: 2px;">我在51CTO的镜像</li>
<li><a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl02_Link" href="http://weblogs.asp.net/TerryLee/" target="_top">TerryLee @ ASP.NET</a> <a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl02_RssLink" title="Subscribe to TerryLee @ ASP.NET" href="http://weblogs.asp.net/terrylee/rss.aspx">(rss)</a></li>
<li style="margin-top: 2px;">我在ASP.NET网站</li>
<li><a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl03_Link" href="http://space.itpub.net/12184684/" target="_top">TerryLee @ IT168</a> <a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl03_RssLink" title="Subscribe to TerryLee @ IT168" href="http://space.itpub.net/12184684/action-rss-type-">(rss)</a></li>
<li style="margin-top: 2px;">我在IT168的镜像</li>
<li><a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl04_Link" href="http://blog.joycode.com/terrylee/" target="_top">TerryLee @ 博客堂</a> <a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl04_RssLink" title="Subscribe to TerryLee @ 博客堂" href="http://blog.joycode.com/terrylee/Rss.aspx">(rss)</a></li>
<li style="margin-top: 2px;">我在博客堂的一片天地</li>
<li><a id="SingleColumn1_Categories_CatList_ctl02_LinkList_ctl05_Link" href="http://www.dotneteye.cn/" target="_top">个人主页</a> </li>

</ul>

</div>

<div class="catList">
<h3 class="catListTitle">我的好友</h3>

<ul>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl01_Link" href="http://chwkai.cnblogs.com/" target="_top">Aero</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl01_RssLink" title="Subscribe to Aero" href="http://chwkai.cnblogs.com/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl02_Link" href="http://anchky.cnblogs.com/" target="_top">anchky</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl02_RssLink" title="Subscribe to anchky" href="http://anchky.cnblogs.com/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl03_Link" href="http://www.cnblogs.com/anytao">Anytao</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl03_RssLink" title="Subscribe to Anytao" href="http://www.cnblogs.com/anytao/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl04_Link" href="http://www.cnblogs.com/autumoon" target="_top">Autumoon</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl04_RssLink" title="Subscribe to Autumoon" href="http://www.cnblogs.com/Autumoon/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl05_Link" href="http://www.cnblogs.com/renrenqq/" target="_top">DDL</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl05_RssLink" title="Subscribe to DDL" href="http://www.cnblogs.com/renrenqq/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl06_Link" href="http://dflying.cnblogs.com/" target="_top">Dflying Chen</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl06_RssLink" title="Subscribe to Dflying Chen" href="http://dflying.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl07_Link" href="http://dudu.cnblogs.com/" target="_top">Dudu</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl07_RssLink" title="Subscribe to Dudu" href="http://dudu.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl08_Link" href="http://perhaps.cnblogs.com/" target="_top">Fantasy Soft</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl08_RssLink" title="Subscribe to Fantasy Soft" href="http://perhaps.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl09_Link" href="http://idior.cnblogs.com/" target="_top">idior</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl09_RssLink" title="Subscribe to idior" href="http://idior.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl10_Link" href="http://www.cnblogs.com/jessequ" target="_top">JesseQu</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl10_RssLink" title="Subscribe to JesseQu" href="http://www.cnblogs.com/jessequ/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl11_Link" href="http://www.cnblogs.com/Jillzhang" target="_top">Jillzhang</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl11_RssLink" title="Subscribe to Jillzhang" href="http://www.cnblogs.com/jillzhang/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl12_Link" href="http://kid-li.cnblogs.com/" target="_top">kid-li</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl12_RssLink" title="Subscribe to kid-li" href="http://kid-li.cnblogs.com/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl13_Link" href="http://luking.cnblogs.com/" target="_top">luking</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl13_RssLink" title="Subscribe to luking" href="http://luking.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl14_Link" href="http://www.cnblogs.com/michellehu" target="_top">MichelleHu</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl14_RssLink" title="Subscribe to MichelleHu" href="http://www.cnblogs.com/michellehu/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl15_Link" href="http://blog.csdn.net/priderock" target="_top">PrideRock的专栏</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl15_RssLink" title="Subscribe to PrideRock的专栏" href="http://feeds.feedsky.com/csdn.net/PrideRock">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl16_Link" href="http://www.cnblogs.com/isuper/" target="_top">RogerTong </a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl16_RssLink" title="Subscribe to RogerTong " href="http://www.cnblogs.com/isuper/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl17_Link" href="http://www.cnblogs.com/Sunmoonfire" target="_top">Sunmoonfire</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl17_RssLink" title="Subscribe to Sunmoonfire" href="http://www.cnblogs.com/Sunmoonfire/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl18_Link" href="http://www.cnblogs.com/teddyma" target="_top">Teddy</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl18_RssLink" title="Subscribe to Teddy" href="http://www.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl19_Link" href="http://www.cnblogs.com/wayfarer" target="_top">wayfarer</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl19_RssLink" title="Subscribe to wayfarer" href="http://www.cnblogs.com/wayfarer/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl20_Link" href="http://hjf1223.cnblogs.com/" target="_top">阿不</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl20_RssLink" title="Subscribe to 阿不" href="http://hjf1223.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl21_Link" href="http://www.cnblogs.com/bvbook" target="_top">博文视点官方博客</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl21_RssLink" title="Subscribe to 博文视点官方博客" href="http://www.cnblogs.com/bvbook/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl22_Link" href="http://www.cnblogs.com/herohuo" target="_top">大人物中的小人物</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl22_RssLink" title="Subscribe to 大人物中的小人物" href="http://www.cnblogs.com/herohuo/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl23_Link" href="http://www.cnblogs.com/dingxue" target="_top">丁学</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl23_RssLink" title="Subscribe to 丁学" href="http://www.cnblogs.com/dingxue/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl24_Link" href="http://www.cnblogs.com/guaiguai/" target="_top">怪怪</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl24_RssLink" title="Subscribe to 怪怪" href="http://www.cnblogs.com/guaiguai/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl25_Link" href="http://www.cnblogs.com/callwangxiang" target="_top">蜡笔小巢</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl25_RssLink" title="Subscribe to 蜡笔小巢" href="http://www.cnblogs.com/callwangxiang/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl26_Link" href="http://www.cnblogs.com/waxdoll/" target="_top">蜡人张</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl26_RssLink" title="Subscribe to 蜡人张" href="http://waxdoll.cnblogs.com/Rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl27_Link" href="http://www.cnblogs.com/jeffreyzhao" target="_top">老赵</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl27_RssLink" title="Subscribe to 老赵" href="http://www.cnblogs.com/JeffreyZhao/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl28_Link" href="http://www.joygee.com/" target="_top">李茹</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl28_RssLink" title="Subscribe to 李茹" href="feed://http//www.joygee.com/feed/">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl29_Link" href="http://www.agilelabs.cn/blogs/linkin/default.aspx" target="_top">卢彦</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl29_RssLink" title="Subscribe to 卢彦" href="http://www.agilelabs.cn/blogs/linkin/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl30_Link" href="http://zhenyulu.cnblogs.com/" target="_top">吕震宇</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl30_RssLink" title="Subscribe to 吕震宇" href="http://zhenyulu.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl31_Link" href="http://www.cnblogs.com/lbq1221119" target="_top">罗炳桥</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl31_RssLink" title="Subscribe to 罗炳桥" href="http://www.cnblogs.com/lbq1221119/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl32_Link" href="http://lixianhuei.cnblogs.com/" target="_top">难得一蠢</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl32_RssLink" title="Subscribe to 难得一蠢" href="http://lixianhuei.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl33_Link" href="http://birdshome.cnblogs.com/" target="_top">鸟食轩</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl33_RssLink" title="Subscribe to 鸟食轩" href="http://birdshome.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl34_Link" href="http://bear-study-hard.cnblogs.com/" target="_top">努力学习的熊</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl34_RssLink" title="Subscribe to 努力学习的熊" href="http://bear-study-hard.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl35_Link" href="http://blog.donews.com/crabhn/" target="_top">螃蟹</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl35_RssLink" title="Subscribe to 螃蟹" href="http://blog.donews.com/crabhn/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl36_Link" href="http://crysta10203.blog.sohu.com/" target="_top">水晶心情</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl36_RssLink" title="Subscribe to 水晶心情" href="http://tb.sogou.com/rss?ch=it&amp;desc=%CB%D1%BA%FC%B2%A9%BF%CD%B6%A9%D4%C4&amp;url=http://crysta10203.blog.sohu.com/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl37_Link" href="http://xh831213.cnblogs.com/" target="_top">小寒</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl37_RssLink" title="Subscribe to 小寒" href="http://xh831213.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl38_Link" href="http://overred.cnblogs.com/" target="_top">雁儿飞飞</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl38_RssLink" title="Subscribe to 雁儿飞飞" href="http://overred.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl39_Link" href="http://www.cnblogs.com/justinyoung" target="_top">杨正祎</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl39_RssLink" title="Subscribe to 杨正祎" href="http://www.cnblogs.com/JustinYoung/rss">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl40_Link" href="http://goodcandle.cnblogs.com/" target="_top">源码工作室</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl40_RssLink" title="Subscribe to 源码工作室" href="http://goodcandle.cnblogs.com/rss.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl41_Link" href="http://www.cnblogs.com/msdpe/" target="_top">张大磊</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl41_RssLink" title="Subscribe to 张大磊" href="http://www.cnblogs.com/msdpe/RSS.aspx">(rss)</a></li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl42_Link" href="http://www.cyworld.com.cn/qiansui" target="_top">张莹</a> </li>

<li><a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl43_Link" href="http://www.cnblogs.com/zhouyinhui" target="_top">周银辉</a> <a id="SingleColumn1_Categories_CatList_ctl03_LinkList_ctl43_RssLink" title="Subscribe to 周银辉" href="http://www.cnblogs.com/zhouyinhui/rss">(rss)</a></li>

</ul>

</div>



<div class="catListBlogRank">
<h3 class="catListTitle">积分与排名</h3>
<ul>
	<li class="liScore">
		积分 -	5250874
	</li><li class="liRank">
		排名 -	3
	</li>
</ul>
</div>



<div class="catListView">
<h3 class="catListTitle">阅读排行榜</h3>
	
			<ul>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl01_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/07/17/334911.html">1.&nbsp;.NET设计模式系列文章(240785)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl02_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/11/12/ASPNET_AJAX_QuickStarts.html">2.&nbsp;ASP.NET AJAX入门系列(162046)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl03_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2007/12/09/the-ultimate-jquery-plugin-list.html">3.&nbsp;强烈推荐：240多个jQuery插件(160249)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl04_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2008/03/21/Silverlight2-step-by-step-Tutorials.html">4.&nbsp;一步一步学Silverlight 2系列文章(94439)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl05_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/25/ASPNET_AJAX_ScriptManager.html">5.&nbsp;ASP.NET AJAX入门系列（2）：使用ScriptManager控件(88540)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl06_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/08/01/Enterprise_Library.html">6.&nbsp;Enterprise Library系列文章回顾与总结(87348)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl07_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/04/28/castl_ioc_article.html">7.&nbsp;Castle 开发系列文章(87221)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl08_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/09/293509.html">8.&nbsp;.NET设计模式（2）：单件模式（Singleton Pattern）(85295)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl09_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/09/28/246050.html">9.&nbsp;今天下午真郁闷……(79632)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl10_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/13/295965.html">10.&nbsp;.NET设计模式（3）：抽象工厂模式（Abstract Factory）(73903)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl11_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/24/ASPNET_AJAX_Quick_Starts_Overview.html">11.&nbsp;ASP.NET AJAX入门系列（1）：概述(67798)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl12_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2008/03/07/Silverlight2-step-by-step-part1.html">12.&nbsp;一步一步学Silverlight 2系列（1）：创建一个基本的Silverlight应用(49550)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl13_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/01/04/310716.html">13.&nbsp;.NET设计模式（5）：工厂方法模式（Factory Method）(47209)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl14_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/29/ASPNET_AJAX_UpdatePanel_Part1.html">14.&nbsp;ASP.NET AJAX入门系列（4）：使用UpdatePanel控件（一）(44878)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl15_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/04/03/365762.html">15.&nbsp;Castle ActiveRecord学习实践（1）：快速入门指南(44506)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl16_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/09/293465.html">16.&nbsp;.NET设计模式（1）：开篇(36398)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl17_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/10/14/254631.html">17.&nbsp;Enterprise Library Step By Step系列（一）：配置应用程序块——入门篇(36023)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl18_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/19/299878.html">18.&nbsp;.NET设计模式（4）：建造者模式（Builder Pattern）(34152)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl19_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/28/306254.html">19.&nbsp;CodeSmith开发系列资料总结(30459)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl20_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/12/01/OpenSource_Framework_And_Resource_Recommendation_Overview.html">20.&nbsp;.NET开源项目介绍及资源推荐：序(30351)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl21_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2008/03/07/Silverlight2-step-by-step-part2.html">21.&nbsp;一步一步学Silverlight 2系列（2）：基本控件(29159)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl22_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/27/ASPNET_AJAX_ScriptManagerProxy.html">22.&nbsp;ASP.NET AJAX入门系列（3）：使用ScriptManagerProxy控件(28846)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl23_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/09/01/atlas_series_articles.html">23.&nbsp;Atlas学习手记系列(28339)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl24_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/23/Observer_Pattern.html">24.&nbsp;.NET设计模式（19）：观察者模式（Observer Pattern）(28231)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl02_TopList_ctl25_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/11/01/ASPNET_AJAX_UpdatePanle_Part2.html">25.&nbsp;ASP.NET AJAX入门系列（5）：使用UpdatePanel控件（二）(27899)</a>
			</li>
		
			</ul>
		
</div>

<div class="catListFeedback">
<h3 class="catListTitle">评论排行榜</h3>
	
			<ul>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl01_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/10/13/253667.html">1.&nbsp;如何用SQLDMO在ASP.NET页面下实现数据库的备份与恢复(395)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl02_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/07/17/334911.html">2.&nbsp;.NET设计模式系列文章(355)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl03_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2009/01/05/LINQ-and-LINQ-to-SQL.html">3.&nbsp;不得不为LINQ说几句话，驳“LINQ已死”论(318)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl04_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2008/03/21/Silverlight2-step-by-step-Tutorials.html">4.&nbsp;一步一步学Silverlight 2系列文章(246)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl05_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/01/04/310968.html">5.&nbsp;CodeSmith3.0开发资料下载(233)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl06_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/13/295965.html">6.&nbsp;.NET设计模式（3）：抽象工厂模式（Abstract Factory）(216)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl07_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/05/23/406688.html">7.&nbsp;新版设计模式手册[C#]下载(216)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl08_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/25/ASPNET_AJAX_ScriptManager.html">8.&nbsp;ASP.NET AJAX入门系列（2）：使用ScriptManager控件(179)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl09_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2007/12/09/the-ultimate-jquery-plugin-list.html">9.&nbsp;强烈推荐：240多个jQuery插件(168)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl10_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/11/12/ASPNET_AJAX_QuickStarts.html">10.&nbsp;ASP.NET AJAX入门系列(168)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl11_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/04/03/365762.html">11.&nbsp;Castle ActiveRecord学习实践（1）：快速入门指南(166)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl12_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/04/28/castl_ioc_article.html">12.&nbsp;Castle 开发系列文章(164)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl13_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/23/Observer_Pattern.html">13.&nbsp;.NET设计模式（19）：观察者模式（Observer Pattern）(162)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl14_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/08/01/Enterprise_Library.html">14.&nbsp;Enterprise Library系列文章回顾与总结(158)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl15_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/01/04/310716.html">15.&nbsp;.NET设计模式（5）：工厂方法模式（Factory Method）(158)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl16_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2005/12/09/293509.html">16.&nbsp;.NET设计模式（2）：单件模式（Singleton Pattern）(153)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl17_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/03/21/354972.html">17.&nbsp;天津.NET俱乐部成立了！(146)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl18_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2006/10/29/ASPNET_AJAX_UpdatePanel_Part1.html">18.&nbsp;ASP.NET AJAX入门系列（4）：使用UpdatePanel控件（一）(133)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl19_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2007/12/04/TemplateEngine-Smart-Code-Preview.html">19.&nbsp;基于模板引擎的代码生成器Smart Code预览(129)</a>
			</li>
		
			<li>
				<a id="SingleColumn1_ctl03_TopList_ctl20_Hyperlink1" href="http://www.cnblogs.com/Terrylee/archive/2008/03/07/Silverlight2-step-by-step-part1.html">20.&nbsp;一步一步学Silverlight 2系列（1）：创建一个基本的Silverlight应用(125)</a>
			</li>
		
			</ul>
		
</div>

			</div>
			
		</div><!--end: sideBarMain -->
	</div><!--end: sideBar 侧边栏容器 -->
	<div class="clear"></div>
	</div><!--end: main -->
	<div class="clear"></div>
	<div id="footer">
		
<!--done-->
Copyright ©2010 TerryLee
	</div><!--end: footer -->
</div><!--end: home 自定义的最大容器 -->
    </form>
	
	
      
    
    
    
</body>
</html>
